#include <iostream>

using namespace std;

// #define ADD(x,y) ((x) + (y))

// inline int Add(int x,int y)
// {
//     return x+y;
// }

// int main()
// {
//     //cout << "hello world" << endl;
//     cout << ADD(1,3) <<endl;
//     cout << Add(1,4) << endl;
//     return 0;
// }

// int main()
// {
//     int a = 0;
//     int b = a;
//     auto c = a;
//     auto d = &a;
//     auto* e = &a;
//     cout << typeid(a).name() << endl;
//     cout << typeid(b).name() << endl;
//     cout << typeid(c).name() << endl;
//     cout << typeid(d).name() << endl;
//     cout << typeid(e).name() << endl;

//     auto& f = a;
//     cout << typeid(a).name() << endl;

//     return 0;
// }

#include <vector>
#include <string>

// int main()
// {
//     vector<string> v;
//     v.push_back("csacs");

//     vector<string>::iterator it = v.begin();
//     cout << *it << endl;
//     auto it2 = v.begin();
//     return 0;
// }

// int main()
// {
//     int arr[] = {1,2,3,4,5,6,7,8};

//     for(int i = 0; i < sizeof(arr)/sizeof(arr[0]);i++)
//     {
//         cout << arr[i] << " ";
//     }
//     cout << endl;

//     //for(int e : arr)
//     for(auto& e : arr)
//     {
//         e++;
//         cout << e << " ";
//     }
//     cout << endl;

//     return 0;
// }

// void f(int)
// {
//     cout << "void f(int)" <<endl;
// }

// void f(int*)
// {
//     cout << "void f(int*)" <<endl;
// }

// int main()
// {
//     f(0);
//     //f(NULL);
//     f(nullptr);
//     return 0;
// }

// struct stack
// {
//     int *_a;
//     int _top;
//     int _capacity;    
// };

// void stack_push_back(struct stack* s,int x);
// void stack_pop_back(struct stack* s);

// int main()
// {
//     struct stack s;
//     return 0;
// }

class stack
{
private:
    int *_a;
    int _top;
    int _capacity;
public:
    void init();
    void stack_push_back(int x);
    void stack_pop_back();
};


int main()
{
    stack s;
    return 0; 
}